package com.ebring.shareEducation.service;

import com.ebring.shareEducation.bean.User;
import com.ebring.shareEducation.bean.UserInfo;
import com.ebring.shareEducation.bean.response.UserRsp;
import com.ebring.shareEducation.utils.RspMsg;

import java.util.List;

public interface UserInfoService {

    /**
     * 添加用户
     */
    RspMsg<UserInfo> insertUser(UserInfo userInfo);

    /**
     * 更新用户
     */
    RspMsg<UserInfo> updateUser(UserInfo userInfo);

    /**
     * 实名验证
     */
    RspMsg<UserInfo> insertCert(String userid,String realname,String certnumber,String image1,String image2,String image3);

    /**
     * 实名验证
     */
    RspMsg<UserInfo> updateCert(String userid);

    /**
     * 锁定用户
     */
    RspMsg<UserInfo> updateLocking(String userid, String locking);

    /**
     * 通过id查找用户
     */
    RspMsg<UserInfo> selectUserByUserId(String userId);

    /**
     * 批量删除用户
     */
    RspMsg<UserInfo> DeleteUsers(String[] userId);


    /**
     * 用户登陆
     */

    RspMsg<UserInfo> loginInfo(String email, String password, String codeId);

    /**
     * 修改密码
     */
    RspMsg<UserInfo> changePasswordInfo(String userinfoId,String oldPassword, String newPassword,String token);

    /**
     * 修改支付密码
     */
    RspMsg<UserInfo> changepayPasswordInfo(String userinfoId,String oldpayPassword, String newpayPassword,String token);

    /**
     * 新增支付密码
     */
    RspMsg<UserInfo> addpayPasswordInfo(String userinfoId,  String payPassword);

    /**
     * 查找所有用户
     */
    RspMsg<UserInfo> selectUsersfind();



    /**
     * 根据多条件模糊查询
     *
     * @param id
     * @param email

     * @return
     */
    RspMsg<List<UserInfo>> findUser(String id, String email);

    /**
     * 忘记密码（密码重置）
     */

    RspMsg<UserInfo> forgetPassword(String userId);
}
